/* =========================================================
   Hero layout — intro text (left) + photo visual (right)
   ========================================================= */

.hero-grid-quote {
  display: flex;
  flex-wrap: wrap;
  gap: 48px;
  align-items: flex-start;
}

.hero-grid-quote .hero-intro {
  flex: 1 1 380px;
}

.hero-grid-quote .hero-visual-col {
  flex: 1 1 420px;
  display: flex;
  justify-content: center;
}

.hero-intro {
  padding-top: 0;
  margin-top: -12px;
}

.hero-visual-col .hero-visual {
  width: 100%;
  padding: 0;
}

.hero-visual-col .hero-map-wrap {
  padding: 0;
  border: none;
  background: transparent;
  overflow: visible;
}

.hero-visual-col .hero-world-map {
  width: 100%;
  border-radius: 20px;
  box-shadow: 0 24px 48px rgba(14, 42, 61, 0.28);
  object-fit: cover;
  aspect-ratio: 4 / 3;
}

@media (max-width: 900px) {
  .hero-grid-quote {
    flex-direction: column;
    gap: 40px;
  }

  .hero-visual-col {
    order: -1;
    width: 100%;
  }

  .hero-visual-col .hero-map-wrap {
    margin: 0 8px;
  }
}

/* =========================================================
   Request a Quote — full-width section below the hero
   ========================================================= */

.quote-section {
  padding: 72px 0;
}

.quote-full-wrap form {
  max-width: none;
}

@media (max-width: 640px) {
  .quote-section {
    padding: 48px 0;
  }
}
